<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<h1>学习方式</h1>

<ul><li><p>师兄给的视频，慕课网，以及各种书籍例如：HeadFirstJava，java核心技术，java疯狂讲义。</p></li><li><p>搜索引擎(推荐自己搭ss服务器访问google)</p></li><li><p>StackOverFlow</p></li></ul>

<h1>学习内容(1~2周)</h1>

<h3>Java基础</h3>

<ul><li>Java语言概述及其开发环境</li><li>面向对象</li><li>基本数据类型及运算符</li><li>访问权限控制</li><li>接口和抽象类</li><li>Java基础类库</li><li>Java容器(Collection 和 map)</li><li>Java异常分类及处理</li><li>Java io：bio/nio/aio(了解)</li><li>Java注解(了解)</li><li>Java泛型</li><li>Java内部类</li><li>Java序列化(了解)</li><li>Java复制(了解)</li><li>Java JDBC</li></ul>

<h3>数据库相关</h3>

<ul><li>数据库的使用方式(结合师兄所给出的视频)</li></ul>

<hr/>

<h1>第一周考核任务</h1>

<h2>用Java实现链表</h2>

<h3>说明</h3>

<p>使用Java实现单向链表，双向链表以及循环链表</p>

<h3>要求</h3>

<h4>1.通用需求</h4>

<ul><li>自己设计链表结点的数据结构</li><li>创建链表：通过在控制台输入来初始化一个特定类型的链表</li><li>插入结点：前插，后插以及特定位置插入。</li><li>删除结点：删除特定位置的结点以及通过结点的值删除所有具有相同值的结点。</li><li>查找结点：返回特定位置结点的值。</li><li>遍历链表：遍历并输出整个链表。</li><li>销毁链表：销毁整个链表。</li><li>返回表长：返回链表的长度</li><li>使用控制台进行输入输出操作，人机交互界面要好看。</li><li>进行除了遍历链表之外的操作后都要遍历输出链表。</li><li>在报告中画图表示各个链表的结构(可用visio画图)</li></ul>

<h4>2.各个链表的需求</h4>

<ul><li>单链表要有链表逆置方法，</li><li>双向链表中的遍历要有正反遍历即先顺序遍历一遍，再从尾节点开始逆序遍历一次到头结点。</li><li>循环链表要有判断链表是否有环的方法，以及合并两个循环链表</li></ul>

<hr/>

<h1>考核提交形式</h1>

<ul><li><p>每周的报告+源代码文件夹打包（按照示例文件结构）发送至邮箱：184417610@qq.com</p></li><li><p>提交时间截止为：3月30号23:00</p></li><li><p>压缩包解压后文件夹目录示例：
    <img alt="image" src="https://note.youdao.com/yws/api/personal/file/E8F3B676C71B49FD9BC3FEF41A56D8D5?method=download&amp;shareKey=ed87437d8cc36fb1433d6c10e29cd9a8"/></p></li></ul>

<p><img alt="image" src="https://note.youdao.com/yws/api/personal/file/C1B631F2CD1F4515898417EBFAA23FE9?method=download&amp;shareKey=6295c52bdf58163233bbf603a3f51acf"/></p>
</body>
</html>